﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace WeChatParking.Core.Payment.UnionPay
{
    /// <summary>
    /// 申请退款成功后 智慧通行平台访问接口数据
    /// </summary>
    public class RefundResult : dataBase
    {
        public RefundResultInfo data { get; set; }
    }
    public class RefundResultInfo
    {
        /// <summary>
        /// 订单流水号，由运营商生成，考虑同一订单多次支付。例如支付完成后，半小时未出场，根据运营商规则不同，可能会使用同一订单号继续计费。用流水号唯一标识收费操作
        /// </summary>
        public string syncId { get; set; }
        /// <summary>
        /// 订单号，由运营商生成
        /// </summary>
        public string orderId { get; set; }
        /// <summary>
        /// 由智慧通行平台生成的退款流水号
        /// </summary>
        public string upRefundId { get; set; }
        /// <summary>
        /// /实际退款金额，精确到分，以分为单位。
        /// </summary>
        public int refundAmount { get; set; }
        /// <summary>
        /// 订单支付时间。UTC时间。例如：2018-03-16T16:06:05Z
        /// </summary>
        public DateTime orderDate { get; set; }
        /// <summary>
        /// 订单状态。
        ///0: 支付成功;
        ///1: 支付中;
        ///2: 支付失败;
        ///3: 退款中;
        ///4: 退款成功;
        ///5: 退款失败
        /// </summary>
        public int payStatus { get; set; }
    }
    public class RefundInfo : Responses
    {
        /// <summary>
        /// 状态码。
        ///'0000’：成功;
        ///'1001’：必选参数为空;
        ///'1002’：参数格式错误，具体字段提示;
        ///'1003’：系统错误;
        ///'1004’：签名失败;
        ///'1005’: 授权失败;
        ///'1006’: IP 不在白名单内
        ///'1007’: 车辆不在场内
        /// </summary>
        public string resultCode { get; set; }
        /// <summary>
        /// 失败原因描述
        /// </summary>
        public string description { get; set; }
        public RefundResultInfo data { get; set; }
    }
}